
// Hud Models example


// This function show a lifebar of a selected unit, with a inside life cuantity
// is the health is below 25% the bar will be red.
// This function will show a unit icon, too.
void () HUD_Stay =
{
	local string snetname;
	local float HUD_frame;
	local float finalx;


	if (self.owner.selected != world)
	{
		snetname = self.owner.selected.netname;
		if (snetname == "Harvester")
			setmodel(self, "pics/harv.tga");
		else
		if (snetname == "Apache")
			setmodel(self, "pics/apache.tga");
		else
		if (snetname == "Mammoth Tank")
			setmodel(self, "pics/htank.tga");
		else
		if (snetname == "Light Tank")
			setmodel(self, "pics/tank.tga");
		else
		if (snetname == "Flamer Troop")
			setmodel(self, "pics/flame.tga");
		else
		if (snetname == "Light Mech")
			setmodel(self, "pics/mech.tga");
		else
		if (snetname == "MLRS")
			setmodel(self, "pics/mlrs.tga");
		else
			setmodel(self, "pics/troop.tga");
		
		//The image is the model you set
		setmodel(self.turret,"pics/bar.tga");

		HUD_frame = floor ((((100 / self.owner.selected.max_health) * self.owner.selected.health) / (100 / 125)));
	
			
		if (HUD_frame>25)
			setmodel(self.turret.turret,"pics/bluebar.tga");
		else
			setmodel(self.turret.turret,"pics/redbar.tga");

		//The x coordinate is the origin_x	
		self.turret.turret.origin_x = HUD_frame - 125;

	}
	else
	{
		//If you set not model, hud will dissapair
		setmodel(self, string_null);
		setmodel(self.turret,string_null);
		setmodel(self.turret.turret,string_null);
	}

	self.nextthink = time + 0.1;

	if (((self.owner.selected == world) || (self.owner.weapon == IT_SHOTGUN)))
	{
		setmodel(self, string_null);
		setmodel(self.turret,string_null);
		setmodel(self.turret.turret,string_null);
	}

};

//This function spawn the hud trackers, set the original location of stuff
void () Make_HUD =
{
	local entity missile,lifebar, lifebar2;
	
	missile = spawn ();
	missile.owner = self;

	missile.nextthink = time + 0.1;
	missile.think = HUD_Stay;

	// Screen (8,16) relative to SouthEst
	missile.origin_z = 3;
	missile.origin_x = 8;
	missile.origin_y = 16;

	lifebar2 = spawn ();
	lifebar = spawn ();

	lifebar.owner = self;

	// Screen (8,0) relative to SouthEst

	lifebar.origin_z = 3;
	lifebar.origin_x = 0;
	lifebar.origin_y = 8;
	lifebar.classname = "lifebar";

	missile.turret = lifebar;


	lifebar2.owner = self;

	lifebar2.origin_z = 3;
	lifebar2.origin_x = 0;
	lifebar2.origin_y = lifebar.origin_y;
	lifebar2.classname = "lifebar";

	lifebar.turret = lifebar2;
};


//The "pics" folder is special, hud models NEED to be placed in these folder or will not work.
void () precache_hud =
{
	precache_model("pics/harv.tga");
	precache_model("pics/apache.tga");
	precache_model("pics/htank.tga");
	precache_model("pics/tank.tga");
	precache_model("pics/flame.tga");
	precache_model("pics/mech.tga");
	precache_model("pics/troop.tga");
	precache_model("pics/mlrs.tga");
	precache_model("pics/bar.tga");
	precache_model("pics/redbar.tga");
	precache_model("pics/bluebar.tga");
};


